package cn.bonoon.controllers;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import cn.bonoon.core.info.MyActivityInfo;
import cn.bonoon.kernel.security.LogonUser;
import cn.bonoon.kernel.web.controllers.AbstractController;
import cn.bonoon.kernel.web.models.JsonResult;

@Controller
@RequestMapping("s")
public class MyActivityController extends AbstractController{

	
	/**
	 * <pre>
	 * 客户端可以定时与服务器通讯，测试是否已经断开连接；
	 * 疑点：
	 * 1. 这个行为是在登录之后才会发生
	 * 2. 如果有定时检查最新短消息的功能，那这个行为应该取消
	 * </pre>
	 * 
	 * <pre>
	 * 这里计划会返回比较丰富的内容，返回的内容格式出下：
	 * 1. 是否已经退出登录
	 * 2. 我的最新消息
	 * </pre>
	 * @return
	 */
	@ResponseBody
	@RequestMapping("c/my/activity.json")
	public Object activity(){
		MyActivityInfo myInfo = new MyActivityInfo();
		try{
			LogonUser user = getUser();
			if(null == user){
				myInfo.setLogout(true);
			}else{
				
			}
		}catch (Exception e) {
			myInfo.setError(true);
			myInfo.setMessage(JsonResult.errorMessage(e));
		}
		return myInfo;
	}

	/** 读取所有关于“我”的(提示)消息，因为这个在系统加载的时候，需要在首页上面进行提示；
	 * 访问所有系统生成的框架的界面都需要有提示的，即：layoutmodel里要有提示  */
	@RequestMapping("my/notice.do")
	public String myNotice(Model model){
		try{
		}catch (Exception e) {
			log(e);
		}
		model.addAttribute("layout", "layout-empty.vm");
		return "/sys/my-notice";
	}

}
 